/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ecom.ejb;

import ecom.entity.AccountRemote;
import ecom.entity.ProductRemote;
import ecom.entity.ProductStoreRemote;
import exceptions.IdentifiantInvalide;
import exceptions.InstanceInvalide;

/**
 *
 * @author François
 */
public interface AdminRemote extends CommonRemote {
    
    public AccountRemote createAccount(String iban, double solde,
	    String identifiant, String motDePasse) throws IdentifiantInvalide,
	    InstanceInvalide;
    
    public void removeAccount(AccountRemote account) throws IdentifiantInvalide;
    
    public ProductStoreRemote createProductStore(Long referenceProductStore,
            String ibanAccount, String nomProductStore)
	    throws IdentifiantInvalide, InstanceInvalide;
    
    public void updateProductStore(ProductStoreRemote productStore)
	    throws IdentifiantInvalide, InstanceInvalide;
    
    public void removeProductStore(ProductStoreRemote ProductStore) throws IdentifiantInvalide;
    
    public ProductRemote createProduct(Long referenceProduct,
	    String nomProduct, double prixProduct, Long referenceProductStore,
	    String urlImage) throws IdentifiantInvalide, InstanceInvalide;

    public void updateProduct(ProductRemote produit) throws IdentifiantInvalide;

    public void removeProduct(ProductRemote produit) throws IdentifiantInvalide;
}
